1. Field of the Invention
The present invention relates to video coding and decoding methods, and more particularly, to video coding and decoding methods which utilize a data partitioning structure, and video coding and decoding apparatuses which use these methods.
2. Description of the Related Art
Recently, the video coding group, so called Question 15 under Study Group 16, in the International Telecommunication Unit (ITU), which has defined many standards associated with video conferencing such H.32X, has been working on development of an advanced video coding scheme named H.263++. A large amount of effort has been spent in making H.263++ resilient against an error-prone mobile channel. Thus far, so many technical contributions for error resilience have been proposed to Q.15/SG16 in ITU-T. Among the technical proposals, data partitioning and reversible variable length coding (RVLC), jointly proposed by UCLASamsung, have had a great impact on forming the error resilience features in H.263++. Although the error resilience features have not yet been adopted in the H.263++ scheme, most of the recent technical contributions in the error resilience session of Q.15/SG16 in ITU-T have been based on the use of data partitioning and RVLC. The present invention is directed to the data partitioning.
It is an object of the present invention is to provide a method of coding video data by adaptively adding redundancy bits into a video bitstream in accordance with a channel status and the degree of importance of syntax.
Another object of the present invention is to provide a method of decoding the video bitstream encoded by the video coding method.
According to an aspect of the present invention, there are provided a video coding method implemented in a video data transceiver for transmitting and receiving video data through a communications channel, the method comprising: receiving channel status information indicating an error profile of the communication channel; and adaptively adding redundancy information into data packets divided by syntax with a layer configuration, based on the channel status information.
In another embodiment of the present invention, there is provided a video coding method implemented in a video data transceiver for transmitting and receiving video data through a communications channel, the method comprising: (a) receiving channel status information containing information that is indicative of an error profile of the channel; (b) determining whether an additional layer is required, based on the channel status information; (c) if, in the step (b), it is determined that the additional layer is not required, composing a first layer containing video data information and administrative information; (d) if, in the step (b), it is determined that only a second layer is required, configuring a second layer by adding a first auxiliary information containing redundancy information corresponding to the information on the first layer; (e) if, in the step (b), it is determined that both the second and third layers are required, composing a third layer by adding first auxiliary information containing redundancy information corresponding to the information on the first layer, and a third layer by adding a second auxiliary information containing other redundancy information corresponding to the information on the first layer.
Preferably, if, in the step (b), it is determined that either only the second layer, or both the second and third layers are required, the video coding method further comprises adding a predetermined unique marker to the preceding part of the corresponding packet in the configuration of the second layer. Also, if, in the step (b), it is determined that either only the second layer, or both the second and third layers are required, the video coding method may further comprise adding a second flag bit indicating the presence of an additional layer.
Preferably, the first auxiliary information contains information on coding parameters of the picture data in the first layer, and one or more COD bits indicating whether the coding is performed. Also, the COD bit may consist of three bits per macro block. Also, the first auxiliary information may contain one or more MCBPC (MaCro Block Pattern Chrominance) bit per macro block, which indicate kinds of chrominance of macro blocks, and the MCBPC bit may consist of 5 bits per macro block to be coded.
Preferably, the second auxiliary information contains information on coding parameters of the picture data in the first layer. For example, the second auxiliary information may contain bits indicating the number of MCBPC (MaCro Block Pattern Chrominance) bits per macro block, the MCBPC indicating kinds of chrominance of macro blocks. The bit indicating the number of MCBPC bits may consist of 4 bits per QCIF (Quarter Common Intermediate Format). Also, the second auxiliary information may contain one or more COD bit indicating whether the coding is performed, and the COD bit may consist of 1 bit per macro block. Preferably, the second auxiliary information contains MB (macro block) Type bits indicating types of macro block, and the MB Type bits consist of 2 bits per macro block.
According to another aspect of the present invention, there is provided a video decoding method implemented in a video data transceiver for transmitting and receiving video data through a communications channel, the method comprising: inputting a video bitstream to which redundancy information has been adaptively added with a layered configuration, to data packets divided by syntax; identifying whether an additional layer is present and which layer has been added; and decoding corresponding layers based on the information about the additional layer.
In another embodiment of the present invention, a video decoding method implemented in a video data transceiver for transmitting and receiving video data through a communications channel, comprises: inputting a video bitstream to which redundancy information has been adaptively added with a layered configuration, to data packets divided by syntax; defining a first layer by detecting a resynchronization marker from the video bitstream, and identifying a first flag bit indicating the presence or absence of an additional layer in the first layer; if the first flag bit indicates the absence of the additional layer, decoding the first layer; if the first flag bit indicates the presence of the additional layer, identifying a marker indicating the start of a second layer; identifying a second flag bit indicating the presence or absence of a third layer; if the second flag bit indicates the absence of the third layer, decoding the first and second layers; and if the second flag bit indicates the presence of the third layer, decoding the first, second and third layers.
The invention may be embodied in a general purpose digital computer by running a program from a computer usable medium, including but not limited to storage media such as magnetic storage media (e.g., ROM""s, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet). Hence, the present invention may be embodied as a computer usable medium.